package com.sinodata.atmp.components
{
	import mx.controls.Alert;
	import mx.controls.dataGridClasses.DataGridItemRenderer;
	import mx.controls.dataGridClasses.DataGridListData;
	
	public class CellColorItemRenderer extends DataGridItemRenderer
	{
		//传递回调函数
		private var _cellColorFunction:Function ;
		public function CellColorItemRenderer(f:Function)
		{
			super();
			this._cellColorFunction = f;
		}
		override public function set data(value:Object):void
		{
			//整个1行数据,而不是1列数据,相当于java,vo中的1个vo对象;即列表中的一行记录
			Alert.show("CellColorItemRenderer:value="+value.toString());
			if(value != null)
			{
				var data:XML = XML(value);
				super.data = value;
				//调用父类的public function get listData():BaseListData
				var dataField:String = DataGridListData(listData).dataField;
				while(dataField.indexOf("@")!=-1) 
					dataField = dataField.replace("@","");
				//迭代出的每行记录中的每列,即列的名称
				//Alert.show("CellColorItemRenderer:dataField="+dataField);
				//改变颜色；两个参数，dataField表示数据列（名称），data表示一行数据
				setStyle("color", this._cellColorFunction.call(this,dataField,data));
			}
		}
	}
}